package com.gpframework.module.purchase.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import com.gpframework.common.annotation.Excel;
import java.util.Date;
import java.math.BigDecimal;

/**
 * @ClassName GpPurchasingMakingDetailsVo
 * @Author gpframework
 * @Date 2023-12-22
 * @Version 1.0.0
 * @Description 采购做货明细Vo对象
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
public class GpPurchasingMakingDetailsVo {
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @ApiModelProperty("${column.columnComment}")
    private Long id;

    /** 品牌id */
    @Excel(name = "品牌id")
    @ApiModelProperty("品牌id")
    private String brandId;

    /** 品牌名称 */
    @Excel(name = "品牌名称")
    @ApiModelProperty("品牌名称")
    private String brandName;

    /** 缺货报库存申请表id */
    @Excel(name = "缺货报库存申请表id")
    @ApiModelProperty("缺货报库存申请表id")
    private Long productionApplicationId;

    /** 做货单号 */
    @Excel(name = "做货单号")
    @ApiModelProperty("做货单号")
    private String sn;

    /** 供应商 */
    @Excel(name = "供应商")
    @ApiModelProperty("供应商")
    private String supplier;

    /** 品名 */
    @Excel(name = "品名")
    @ApiModelProperty("品名")
    private String productName;

    /** 颜色 */
    @Excel(name = "颜色")
    @ApiModelProperty("颜色")
    private String productColor;

    /** 克重 */
    @Excel(name = "克重")
    @ApiModelProperty("克重")
    private Long fabricWeight;

    /** 下机幅宽 */
    @Excel(name = "下机幅宽")
    @ApiModelProperty("下机幅宽")
    private String lowerMachineWidth;

    /** 密度 */
    @Excel(name = "密度")
    @ApiModelProperty("密度")
    private String density;

    /** 手感 */
    @Excel(name = "手感")
    @ApiModelProperty("手感")
    private String feel;

    /** 厂家色号 */
    @Excel(name = "厂家色号")
    @ApiModelProperty("厂家色号")
    private String factoryColorCode;

    /** 规格 */
    @Excel(name = "规格")
    @ApiModelProperty("规格")
    private String norms;

    /** 数量（条） */
    @Excel(name = "数量", readConverterExp = "条=")
    @ApiModelProperty("数量（条）")
    private Integer quantity;

    /** 发货日期 */
    @Excel(name = "发货日期", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty("发货日期")
    private Date sendDate;

    /** 染厂实际发货数量 */
    @Excel(name = "染厂实际发货数量")
    @ApiModelProperty("染厂实际发货数量")
    private Long actualSendNum;

    /** 图片 */
    @Excel(name = "图片")
    @ApiModelProperty("图片")
    private String picture;

    /** 备注 */
    @Excel(name = "备注")
    @ApiModelProperty("备注")
    private String remarks;

    /** 申请人id */
    @Excel(name = "申请人id")
    @ApiModelProperty("申请人id")
    private Long enteredId;

    /** 申请人 */
    @Excel(name = "申请人")
    @ApiModelProperty("申请人")
    private String enteredMan;

    /** 申请时间 */
    @Excel(name = "申请时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("申请时间")
    private Date enteredTime;

    /** 关联需求单号 */
    @Excel(name = "关联需求单号")
    @ApiModelProperty("关联需求单号")
    private String relatedNeedNumber;

    /** 跟单员 */
    @Excel(name = "跟单员")
    @ApiModelProperty("跟单员")
    private String merchandiser;

    /** 操作时间 */
    @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("操作时间")
    private Date operatorTime;

    /** 排序 */
    @Excel(name = "排序")
    @ApiModelProperty("排序")
    private Integer sort;

    /** 创建者 */
    @ApiModelProperty("创建者")
    private String createBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("创建时间")
    private Date createTime;

    /** 更新者 */
    @ApiModelProperty("更新者")
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("更新时间")
    private Date updateTime;

    /** 操作人名称 */
    @ApiModelProperty("操作人名称")
    private String operatorName;

    /** 操作人编号 */
    @ApiModelProperty("操作人编号")
    private String operatorNum;

    /** 列表是否修改字段（前端使用） */
    private Boolean clickEdit = false;

}
